<?php namespace Admin\Controller; 
use Hdphp\Controller\Controller;

//文章分类类
class TypeController extends Controller{
		
	private $model;
	//构造函数
	public function __init()
	{
		//检测用户是否登陆		
		if(!isset($_SESSION['aid'])) header('Location: '.U('Login/index'));	
		
		$this->model = new \Common\Model\Type;
			
	}
	
	public function index(){
		//获取数据库分类数据
		$data = $this->model->get();	
		if(empty($data)){
			View::success('请先添加分类',U('Type/add'));
		}
		
//		p($data);
		View::with('data',$data);	
		View::make();
	}
	
	//添加商品类型
	public function add(){
		if(IS_POST){
		    //p(Q("post."));exit;
		    //$this->success();
		    $tid = $this->model->store();
		   if($tid){
		   	foreach (Q("post.") as $key => $value) {
		   		//添加类型属性
		   		if(is_array($value) && !empty($value)){
		   			$tmpArr = array(
						'taname'=>$value[0],
						'class'=>$value[1],
						'tavalue'=>$value[2],
						'type_tid'=>$tid						
					);
					Db::table('type_attr')->insert($tmpArr);
		   		}
		   	}
		   	View::success('添加成功',U('Type/index'));
		   }
		    View::error($this->model->getError());
		}
		
		 View::make();
	}
	
	//添加子级分类
	public function addSon(){
		if(IS_POST){
		    
		   if($this->model->store()){
		   	View::success('添加成功',U('Cate/index'));
		   }
		    View::error($this->model->getError());
		}
		//获取所属分类
		$cid = Q('get.cid',0,'intval');
		$cate=$this->model->where("cid={$cid}")->find();
		View::with('cate',$cate);
		View::make();
	}
	
	
	
	//删除分类
	public function del(){
	   //获取 分类 cid
	   $cid=Q('get.cid',0,'intval');
	   //判断此分类下是否有文章
	   $arc = new \Common\Model\Art;
	   $dbdata = $arc->where("category_cid={$cid}")->find();
	   if($dbdata){
	   	View::error('请先删除此分类下 的文章在进行删除');
	   }
	   
	   //子类上位	   
	   $pid = $this->model->where("cid={$cid}")->pluck('pid');
	   
	   $this->model->where("pid={$cid}")->update(array('pid'=>$pid));
	   //删除本类
	   $this->model->where("cid={$cid}")->delete();
	   View::success('删除成功',U('Cate/index'));
	   //go(U('Cate/index'));
	}
	
	//编辑分类
	public function edit(){
		
		if(IS_POST){
//			p(Q('post.'));
			
			if($this->model->myedit()){
				View::success('修改成功');
			}
			View::error($this->model->getError());
		}
		
		//获取旧数据
		$tid=Q('get.tid','0','intval');
		$dbdata = $this->model->where("tid={$tid}")->find();
//		p($dbdata);exit;		
		
		View::with('dbdata',$dbdata);
//		//获取对应的属性 
		$attrs = Db::table('type_attr')->where("type_tid={$tid}")->get();
//		p($attrs);exit;
		View::with('attrs',$attrs);	
		View::make();
	}
}

    
?>
